package verwaltung;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.ObjectOutputStream;

public class Dateianbindung {
	
	private EQVerwaltung verwaltung;
	
	public Dateianbindung(EQVerwaltung v){
		verwaltung = v;
	}
	
	public void dateispeichern(String datei){
		ObjectOutputStream oos = null;
        try
        {
            oos = new ObjectOutputStream(new FileOutputStream(datei));
            try {
				oos.writeObject(verwaltung.getGeraete());
				oos.writeObject(verwaltung.getStandorte());
			} catch (VerwaltungException e) {
				e.printStackTrace();
			}
        } catch (FileNotFoundException e)
        {
            System.out.println("Kann Datei zum Serialisieren nicht speichern: " + datei);
        } catch (IOException e)
        {
            System.out.println("Fehler beim Serialisieren: " + e.getMessage());
        } finally  // kommt in jedem Fall dran
        {
            if (oos != null)
            {
                try
                {
                    oos.close();
                } catch (IOException e)
                {
                    System.out.println("Kann Datei nicht schlie�en: " + datei);
                }
            }
        }
	}
	

//	@SuppressWarnings("unchecked")
//	public void dateiladen(String datei){
//		ObjectInputStream ois = null;
//        try
//        {
//            ois = new ObjectInputStream(new FileInputStream(datei));
//            verwaltung.Geraeteliste_ersetzen((ArrayList<Geraet>) ois.readObject());
//            verwaltung.Standorte_ersetzen((ArrayList<Standort>) ois.readObject());
//        } catch (FileNotFoundException e)
//        {
//            System.out.println("Kann Datei nicht zum Deserialisieren �ffnen: " + datei);
//        } catch (IOException e)
//        {
//            System.out.println("Fehler beim Deserialisieren: " + e.getMessage());
//        } catch (ClassNotFoundException e)
//        {
//            System.out.println("Feler beim Deserialisieren: " + e.getMessage());
//        } finally
//        {
//            if (ois != null)
//            {
//                try
//                {
//                    ois.close();
//                } catch (IOException e)
//                {
//                    System.out.println("Kann Datei nicht schlie�en: " + datei);
//                }
//           }
//        }
//	}
}
